﻿using Persistencia;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Dlls
{
    public class ContasAPagarDLL
    {
        Context context;

        public ContasAPagarDLL()
        {
            context = new Context();
        }
        public IEnumerable<APagar> List()
        {
            return (from o in context.ContasAPagar select o).ToList();
        }

        public void Insert(APagar apagar)
        {
            context.ContasAPagar.InsertOnSubmit(apagar);
            context.SubmitChanges();
        }

        public void Update(int codigo, APagar apagar)
        {
            APagar ap = context.ContasAPagar.SingleOrDefault(o => o.Codigo == codigo);
            context.SubmitChanges();
        }
        public void Delete(APagar apagar)
        {
            context.ContasAPagar.DeleteOnSubmit(apagar);
            context.SubmitChanges();

        }
        public void InserirConta(DateTime iDataCompra, DateTime iDataPagamento, decimal iTotalPagamento, int iCodPessoa,
        string iDescricaoConta, int iDocumento)
        {
            APagar apagar = new APagar();
            apagar.DataCompra = iDataCompra;
            apagar.DataPagamento = iDataPagamento;
            apagar.TotalPagamento = iTotalPagamento;
            apagar.CodigoPessoa = iCodPessoa;
            apagar.Descricao = iDescricaoConta;
            apagar.documento = iDocumento;

            context.ContasAPagar.InsertOnSubmit(apagar);
            context.SubmitChanges();


        }

        public APagar getClasse(int codigo)
        {
            return context.ContasAPagar.SingleOrDefault(e => e.documento == codigo);
        }
        public string getNomePorCodigo(int codigo)
        {
            return context.Pessoas.SingleOrDefault(e => e.Codigo == codigo).Nome;
        }
        public string ReturnNomeClasse(string codigo)
        {
            return context.Financeiro.SingleOrDefault(e => e.Codigo == codigo).NomeClasse;
        }
     }
}
